/* =========================================================================================
PROJET           : c-social-network
NOM DU FICHIER   : controler.h
OBJET            : Header du module controler (programme principal)
--------------------------------------------------------------------------------------------
DATE DE CREATION : 06/05/10
AUTEUR           : Joris PUECHLONG
--------------------------------------------------------------------------------------------
MODIFICATIONS (   n) date - auteur - description )
	1) 06/05/2010 - Joris PUECHLONG - Reflexion, debut codage
	2) 12/05/2010 - Benjamin MICHEL - load_input
	3) 16/05/2010 - Joris PUECHLONG - création du graph dual dans load_input + ajout des relations
	4) 20/05/2010 - Benjamin MICHEL - définitions fonctionneles de read_exec_question()

========================================================================================= */
#ifndef H_CONTROLER
#define H_CONTROLER

#include <stdio.h>
#include <stdlib.h>

#include "../lib/entree/entree.h"
#include "../lib/sortie/sortie.h"
#include "../lib/personne/personne.h"
#include "../lib/graph/graph.h"
#include "../lib/liste/liste.h"
#include "algo.h"


/*
function load_input(IN: char * file_name)return *t_graph;
--charge les données du fichier file_name, et les mets dans une structure de données.
--renvoie l'adresse du graph
*/
void load_input(void *, t_graph**, t_graph**);

/*
function calc_output(IN: t_graph * graph, char * file_name)return int;
--calcul les algorithmes, et écrit dans le file_name le résultat
--l'entier renoyé est 0 si il n'y a pas d'erreurs
*/
void calc_output(t_graph *, t_graph*, void *);

/*
function read_exec_questions(IN: FILE * fichier, t_graph *) return t_liste**;
--lit les questions dans le fichier d'entrée
--enregistre les reponses

--require:
--	fichier ouvert
--	graph remplis
*/
void read_exec_question(void *, void *, t_graph *);


/*
function load_net_input
*/

#endif
